//特殊类型
//联合类型
let pp:string|number|boolean =56
pp="zs"
pp=true

let arr:(string|number)[] = [56,45,"zs"]

//字面量类型
let ppp:"zs" = "zs"
let pppp:55|string ="ls"

//type
type ooo = string|number|boolean
type oooo=string
interface Per{
    name:string,
    age:number,
    height?:number
}
type pppp={
    name:string,
    age:number,
    height?:number
}

let vv:ooo ="ls"
let vvv:oooo="zs"
let ww:pppp={
    name:"zs",
    age:18
}

interface SubPer extends Per{
    id:number
}

let lll:SubPer={
    name:"zs",
    agr:18,
    id:1,
    height:181
}
type pppp1= pppp &{id:number}
let llll:pppp1={
    name:"zs",
    age:18,
    id:1
}